package beautiful.butterfly.drds.datasource.connection_contexts.api;


import java.math.BigDecimal;
import java.sql.*;

public interface IRowDataMapList {

    public ISql getSql();

    public ResultSet getResultSet();


    //
    public void setFetchDirection(int fetchDirection) throws SQLException;

    public int getFetchDirection() throws SQLException;

    //
    public void setFetchSize(int fetchSize) throws SQLException;

    public int getFetchSize() throws SQLException;

    //
    public void beforeFirst() throws SQLException;

    public boolean isBeforeFirst() throws SQLException;

    public boolean first() throws SQLException;

    public boolean isFirst() throws SQLException;

    public boolean previous() throws SQLException;

    public boolean next() throws SQLException;

    public boolean last() throws SQLException;

    public boolean isLast() throws SQLException;

    public void afterLast() throws SQLException;

    public boolean isAfterLast() throws SQLException;

    public void close() throws SQLException;

    public ResultSetMetaData getResultSetMetaData() throws SQLException;

    //
    public boolean getBoolean(String columnLabel) throws SQLException;

    public boolean getBoolean(int columnIndex) throws SQLException;

    //

    public short getShort(String columnLabel) throws SQLException;

    public short getShort(int columnIndex) throws SQLException;

    //
    public int getInt(String columnLabel) throws SQLException;

    public int getInt(int columnIndex) throws SQLException;

    //
    public long getLong(String columnLabel) throws SQLException;

    public long getLong(int columnIndex) throws SQLException;

    //
    public float getFloat(String columnLabel) throws SQLException;

    public float getFloat(int columnIndex) throws SQLException;

    //
    public double getDouble(String columnLabel) throws SQLException;

    public double getDouble(int columnIndex) throws SQLException;

    //
    public String getString(String columnLabel) throws SQLException;

    public String getString(int columnIndex) throws SQLException;

    //
    public BigDecimal getBigDecimal(String columnLabel) throws SQLException;

    public BigDecimal getBigDecimal(int columnIndex) throws SQLException;

    //

    public Date getDate(String columnLabel) throws SQLException;

    public Date getDate(int columnIndex) throws SQLException;

    //
    public Time getTime(String columnLabel) throws SQLException;

    public Time getTime(int columnIndex) throws SQLException;

    //
    public Timestamp getTimestamp(String columnLabel) throws SQLException;

    public Timestamp getTimestamp(int columnIndex) throws SQLException;

    //
    public Object getObject(String columnLabel) throws SQLException;

    public Object getObject(int columnIndex) throws SQLException;

}
